home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Experimental BBS Explossion 3
/
Experimental BBS Explossion III.iso
/
sound
/
pmmixer.zip
/
PMMIXER.DOC
next >
Wrap
Text File
|
1993-12-05
|
7KB
|
160 lines
PMMIXER V2.0 - a mixer tool for the SoundBlaster Pro under OS/2 2.1 MMPM/2
==========================================================================
*** BETA RELEASE--USE AT YOUR OWN RISK ***
CHANGES FROM PREVIOUS VERSION
-----------------------------
It appeared that this little utility was being used by about everyone
that used a SoundBlaster Pro with other sound sources attached (such as
an internal CD-ROM player). This was because the CD input cannot be
operated with native MMPM/2 controls (blame Creative Labs!). In this
specific type of usage, which was not foreseen by the author, it appeared
irritating that the PMMIXER did not save its settings between sessions
and that it was too friendly in accepting other programs' tinkering with
the SB mixer. E.g., after a system sound, your CD player was mute again.
I added persistant sliders (using a PMMIXER.INI file) and an Agressive
mode, in which the mixer explicitely updates the hardware every 1/10th
of a second. This is crude, but what else could I do without an API
to hook into?!?
I also added a command line parameter '-' that will startup the mixer
as an icon. This works but is ugly, I know. Hey, I did this for YOU on
my free Sunday afternoon!
Future
------
There is still much to be done. I will do all of this, but not before I
receive feedback from YOU, especially about the Agressive mode.
Throw in everything you want to see on this mixer. Just keep in mind
that I want the thing to stay SIMPLE. Don't try to include word processing
facilities and app launching in it, please. We already have enough
overpowered "tiny" utilities.
What is PMMIXER?
----------------
PMMIXER is a PM program to access the internal mixer on the SoundBlaster Pro.
It displays the look-alike of a normal mixing console, with sliders and
pushbuttons to control the SoundBlaster Pro's mixer manually.
What do I need to run PMMIXER?
------------------------------
Naturally, you need a SoundBlaster Pro sound card. Again, be warned
that OS/2 does not like this card to work on IRQ channel 7, because this IRQ
is reserved for the LPT1 device. Put the SoundBlaster Pro on IRQ 5 or so.
Since this is a beta version, there's no provision for SoundBlasters on
other addresses than 0x220. Normally, there's no reason to set the card
to another address, so it will probably work right away. IRQ and DMA
is not used at all.
How do I run PMMIXER?
---------------------
To run PMMIXER just type 'START PMMIXER' at an OS/2 prompt, or double click
on the file object for PMMIXER.EXE. You can also shadow the PMMIXER file
object into a folder of your choice, to easily get to it, or create a real
Program Object. By adding a '-' parameter after it (or in the PARAMETERS
field), the mixer will start up minimised ('START PMMIXER -').
Be careful to start PMMIXER in the directory where you want the PMMIXER.INI
file to be created (or to be found). You can include the default directory
in the appropriate field of the Program Object.
How do I work with PMMIXER?
---------------------------
The program is pretty much self explanatory. The sliders control the volume
levels for the various inputs and outputs of the SB Pro. The radio buttons
control the recording source and whether or not certain filters are
enabled. Play around while producing some music (e.g. by running TRACKER)
and you'll figure out how it all works.
In the System Menu of the mixer (the little black-and-white mixer icon in the
top-left corner of the window) I've added an About box choice that displays
some information about version number and such (and wastes a few CPU cycles
on you) plus a small Help choice that currently gives some beta information.
PMMIXER should not interfere with other programs that use the AMPMIX device or
access the SoundBlaster directly. It will not, however, update itself as soon
as the SoundBlaster settings are changed. The update will come as soon as you
re-activate the mixer, e.g. by clicking on it.
On the other hand, if you switch to Agressive mode, PMMIXER *will*
bluntly reset SB levels to what you told them to be every 1/10th of a
second. This is to overrule %$#@@%$ MMPM/2 that thinks it knows better
what you want than yourself (hey, it still is IBM, isn't it).
What are the known bugs?
------------------------
There are tons of them, but no one should really sit in the way. This is
a test project and I want feedback on some of my approaches before going
further.
The mixer is somewhat boneheaded in accepting the SoundBlaster's settings
at startup. It will copy the sliders, but not the controls. This is something
stupid in my code but not severe enough to delay the release of the beta.
You might have to press some buttons before the sound is what you want.
Only the sliders are persistent yet. The rest will follow.
I did my best to code the PMMIXER display-independently. On my 1024*768*256
screen it looks pretty neat. It might be that on other lower or higher
resolution screens some graphics are screwed up. If so, please notify me,
so that I can change the program appropriately.
Who else gets credit?
---------------------
First, David Nichols (davidn@cs.tamu.edu) who wrote what is now version 1.0
of PMMIXER. He did 70% of the job. I replaced the scroll bar controls with
OS/2 2.x's new slider controls, added the About and Help boxes, converted
the thing to use direct hardware access, and re-vamped the interface.
Since this was my first encounter with OS/2 PM programming, many thanks to
David for implicitly teaching me how to do things.
Second, Michael Fulbright (msf@as.arizona.edu) for providing us OS/2 fanatics
with a good SoundBlaster driver and some useful documentation on it.
Unfortunately for his ego, IBM decided not to buy his drivers.
Third, some people at IBM for giving birth to OS/2 2.x which is by far the
nicest operating system for Intel-based computers that I've encountered
so far.
Are the sources available?
--------------------------
Of course they are. Just mail me (hoppie@kub.nl) and you'll get them.
Since this is a beta release, code still is under development.
What about MMPM/2?
------------------
I would *love* to re-write this program to correctly control the Sound
Blaster Pro through MMPM/2. However, Creative Labs decided to screw us
and did a bad job on writing drivers. No mixer support at all.
Hopefully they will learn quickly after having a good look at the
Pro Audio Spectrum (PAS-16) drivers.
DISCLAIMER
----------
I (and probably David and Michael as well) take no responsibility whatsoever
about the correct functioning of this program. It is provided for free
to everyone who happens to like it and will cost $100 for others.
Having said this, I might try to adjust the program if someone kindly points
me to a flaw or an improvement.
December 5, 1993
Jeroen Hoppenbrouwers (hoppie@kub.nl)
Infolab, Tilburg University, The Netherlands